Welcome Guest, you are in: Login
CTS Futures

Page History: Order Cancel Request

Compare Page Revisions



« Older Revision - Back to Page History - Newer Revision »


Page Revision: 2016/01/22 15:34



Canceling Working Orders

The Order Cancel Request message (MsgType=F) is used by the T4 FIX API to electronically cancel (i.e. pull) working orders. This message is used for all CTS strategy types including outright futures, futures options, spreads and multileg strategies. The instrument for which the cancel-request is submitted is identified with the following tags: Tag 48 (SecurityID), Tag 55 (Symbol) and Tag 207 (SecurityExchange). In addition to full market specification, all cancel requests must be uniquely identified with a verbose (# characters >= 12 and <= 20) Client Order Id (Tag 11).

Identifying the Order to be Canceled

Working Orders to be canceled can be identified with the working order (client-side) identifier or the (T4 FIX API generated) order identifier. For the cancel-request message, the OrigClOrdId (Tag 41) and the OrderId (Tag 37) are the corresponding fields. Working orders that have experienced previous rejections can subsequently be canceled with OrderId (Tag 37) or by using the ClOrdId (Tag 11) of the rejection.

Orders submitted outside the T4 FIX API (e.g. with the CTS T4 Front-End and/or custom T4 API application) can only be canceled with OrderId (Tag 37). In this case, as OrigOrdClId is undetermined but is a required tag for the cancel request, the OrigOrdClId (Tag 41) is set to the value of the OrderId (Tag 37). To cover all scenarios, it is recommended that both OrigClOrdId (Tag 41) and OrderId (Tag 37) be specified for all cancel requests.

Important Considerations

Malformed cancel requests (including missing required tags, empty tags, invalid tag value range, etc.) will be rejected with a FIX Session Reject message.

Please note that all order routing including the submission of cancel requests must be preceded by a sucessful subscription to the account the request is submitted for. Please refer to the Collateral Inquiry message on how to subscribe to customer accounts.

Contingent (multiple-component) orders like OCO's and AutoOCO's can cancel all components (working and suspended) if a cancel request is performed on a working component. A cancel request on a suspended component only cancels the (targeted) suspended component.


Message Dictionary

TagField NameReq'dComments
Standard HeaderYMsgType = F
1AccountYAccount (code) for which the cancel request is submitted.
11ClOrdIDY(Client-Side) identifier for this cancel request. Must be unique. Maximum number of characters: 20.
41OrigClOrdIDY(Client-Side) ClOrdID of the target working order. (NOT the initial order of the chain). Maximum number of characters: 20.
37OrderIdNUnique identifier (as assigned by T4 servers) of the target working order. OrderId uniqueness is guaranteed across all trading sessions regardless of order origin.
48SecurityIDYSecurity identifier. This is the T4 Market ID.
55SymbolYSymbol. This is the T4 Contract ID.
207SecurityExchangeYExchange at which the security trades. This is the T4 Exchange ID.
167SecurityTypeNInstrument type. Futures="FUT", Options="OPT", Stock="STK", Synthetic="SYN", Binary Option="BIN"
54SideYSide of the market. Valid values are:
0 = None (used for Flatten orders)
1 = Buy
2 = Sell
38OrderQtyNThe number of contracts to be canceled. For partially filled orders, this value reflects the working order's original Quantity (OrderQty) and not its remaining (unfilled) quantity.
60TransactTimeYTime this cancel request was requested for. Specified in UTC form.
109CliendIDNFirm identification for third-party transactions
107SecurityDescNDescription of the specified Security ID (Tag 48)
Standard TrailerY


Sample Messages

Canceling a Working Order entered through the T4 FIX API


[FIXCANCEL] 34=290|49=T4Example|56=T4|50=TraderName|52=20121212-20:27:03.637|1=Account1|11=fc-634909192236370301|37=FA657BC9-A1D2-4644-B558-A1155C731DA4|41=fr-634909107579297721|48=CME_20121200_ESZ2|54=1|55=ES|207=CME_Eq|60=20121212-20:27:03.637|167=FUT|

[MsgSeqNum] 34 = 290
[SenderCompID] 49 = T4Example
[TargetCompID] 56 = T4
[SenderSubID] 50 = TraderName
[SendingTime] 52 = 20121212-20:27:03.637
[Account] 1 = Account1
[ClOrdID] 11 = fc-634909192236370301
[OrderID] 37 = FA657BC9-A1D2-4644-B558-A1155C731DA4
[OrigClOrdID] 41 = fr-634909107579297721
[SecurityID] 48 = CME_20121200_ESZ2
[Side] 54 = 1 (BUY)
[Symbol] 55 = ES
[SecurityExchange] 207 = CME_Eq
[TransactTime] 60 = 20121212-20:27:03.637
[SecurityType] 167 = FUT (FUTURE)


[fixexecutionreport] 34=648|49=T4|56=T4Example|50=T4FIX|52=20121212-20:27:03.715|143=US,IL|1=Account1|11=fc-634909192236370301|41=fr-634909107579297721|17=48202.71332626389_ESZ2.63490919244745000018.2.FA657BC9|150=4|37=FA657BC9-A1D2-4644-B558-A1155C731DA4|39=4|48=CME_20121200_ESZ2|55=ES|207=CME_Eq|200=201212|59=0|107=E-mini S&P 500 Dec12|54=1|167=FUT|38=1|40=2|44=143075|60=20121212-20:27:24.745|

[MsgSeqNum] 34 = 648
[SenderCompID] 49 = T4
[TargetCompID] 56 = T4Example
[SenderSubID] 50 = T4FIX
[SendingTime] 52 = 20121212-20:27:03.715
[TargetLocationID] 143 = US,IL
[Account] 1 = Account1
[ClOrdID] 11 = fc-634909192236370301
[OrigClOrdID] 41 = fr-634909107579297721
[ExecID] 17 = 48202.71332626389_ESZ2.63490919244745000018.2.FA657BC9
[ExecType] 150 = 4 (CANCELED)
[OrderID] 37 = FA657BC9-A1D2-4644-B558-A1155C731DA4
[OrdStatus] 39 = 4 (CANCELED)
[SecurityID] 48 = CME_20121200_ESZ2
[Symbol] 55 = ES
[SecurityExchange] 207 = CME_Eq
[MaturityMonthYear] 200 = 201212
[TimeInForce] 59 = 0 (DAY)
[SecurityDesc] 107 = E-mini S&P 500 Dec12
[Side] 54 = 1 (BUY)
[SecurityType] 167 = FUT (FUTURE)
[OrderQty] 38 = 1
[OrdType] 40 = 2 (LIMIT)
[Price] 44 = 143075
[TransactTime] 60 = 20121212-20:27:24.745



Canceling a Working Order entered through the CTS Front-end


[FIXCANCEL] 34=309|49=T4Example|56=T4|50=TraderName|52=20121212-20:33:42.046|1=Account1|11=fc-634909196220461298|37=4C3DFFB6-04CC-4B1F-8152-0EC58C9E5653|41=4C3DFFB6-04CC-4B1F-8152-0EC58C9E5653|48=CME_20121200_ESZ2|54=2|55=ES|207=CME_Eq|60=20121212-20:33:42.046|167=FUT|

[MsgSeqNum] 34 = 309
[SenderCompID] 49 = T4Example
[TargetCompID] 56 = T4
[SenderSubID] 50 = TraderName
[SendingTime] 52 = 20121212-20:33:42.046
[Account] 1 = Account1
[ClOrdID] 11 = fc-634909196220461298
[OrderID] 37 = 4C3DFFB6-04CC-4B1F-8152-0EC58C9E5653
[OrigClOrdID] 41 = 4C3DFFB6-04CC-4B1F-8152-0EC58C9E5653
[SecurityID] 48 = CME_20121200_ESZ2
[Side] 54 = 2 (SELL)
[Symbol] 55 = ES
[SecurityExchange] 207 = CME_Eq
[TransactTime] 60 = 20121212-20:33:42.046
[SecurityType] 167 = FUT (FUTURE)


[fixexecutionreport] 34=787|49=T4|56=T4Example|50=T4FIX|52=20121212-20:33:42.092|143=US,IL|1=Account1|11=fc-634909196220461298|17=48212.71332696293_ESZ2.63490919643143000018.2.4C3DFFB6|150=4|37=4C3DFFB6-04CC-4B1F-8152-0EC58C9E5653|39=4|48=CME_20121200_ESZ2|55=ES|207=CME_Eq|200=201212|59=0|107=E-mini S&P 500 Dec12|54=2|167=FUT|38=1|40=2|44=143525|60=20121212-20:34:03.143|

[MsgSeqNum] 34 = 787
[SenderCompID] 49 = T4
[TargetCompID] 56 = T4Example
[SenderSubID] 50 = T4FIX
[SendingTime] 52 = 20121212-20:33:42.092
[TargetLocationID] 143 = US,IL
[Account] 1 = Account1
[ClOrdID] 11 = fc-634909196220461298
[ExecID] 17 = 48212.71332696293_ESZ2.63490919643143000018.2.4C3DFFB6
[ExecType] 150 = 4 (CANCELED)
[OrderID] 37 = 4C3DFFB6-04CC-4B1F-8152-0EC58C9E5653
[OrdStatus] 39 = 4 (CANCELED)
[SecurityID] 48 = CME_20121200_ESZ2
[Symbol] 55 = ES
[SecurityExchange] 207 = CME_Eq
[MaturityMonthYear] 200 = 201212
[TimeInForce] 59 = 0 (DAY)
[SecurityDesc] 107 = E-mini S&P 500 Dec12
[Side] 54 = 2 (SELL)
[SecurityType] 167 = FUT (FUTURE)
[OrderQty] 38 = 1
[OrdType] 40 = 2 (LIMIT)
[Price] 44 = 143525
[TransactTime] 60 = 20121212-20:34:03.143



FIX API Home Page.

Trade how you want, where you want

support@ctsfutures.com (312) 939 0164

2 Pierce Pl, Suite 200, Itasca, IL 60143

© 2009-2023 Cunningham Trading Systems LLC All rights reserved.